<template>
  <div class="todo-header">
    <input type="text" placeholder="请输入你的任务名称，按回车键确认"
           @keyup.enter="addItem" v-model="title"/>
  </div>
</template>

<script>
export default {
  name: "TodoHeader",
  data(){
    return{
      title:'', /*内部使用的状态，没必要通过vuex共享*/
    }
  },
  methods:{
    addItem(){
      /*1 检查输入和合法性*/
      const title = this.title.trim();
      /*2 生成一个todo对象*/
      if (!title){
        alert('不要全是空格');
        return
      }
      const item = {title:title,complete:false}

      /*3 添加打todos*/
      this.$store.dispatch('addTodo',item)

      /*4 清空数据*/
      this.title = '';
    }
  }
}
</script>

<style scoped>

/*header*/
.todo-header input {
  width: 560px;
  height: 28px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 4px 7px;
}

.todo-header input:focus {
  outline: none;
  border-color: rgba(82, 168, 236, 0.8);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
}

</style>
